#pragma once
#ifndef IMAGEBUFFER_H
#define IMAGEBUFFER_H

#include <Windows.h>

// An alias for CHAR_INFO becuase it's a pain in the ass to type
typedef CHAR_INFO Pixel;

namespace Graphics
{
	struct ImageBuffer
	{
	public:
		ImageBuffer(int width, int height);
		ImageBuffer(){ };
		~ImageBuffer();
		void setData(int x, int y, Pixel& pixel);
		inline Pixel* getDataPtr() { return _data; }
		inline int getWidth() { return _width; }
		inline int getHeight() { return _height; }
		inline int getTotalSize() { return _height * _width; }
	private:
		int _width;
		int _height;
		Pixel* _data;
	};
}
#endif